home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / msdos / fractal / forb01 / fractorb.doc < prev    next >
Text File  |  1991-07-25  |  6KB  |  105 lines

  1.                 FractOrb
  2.     program to display orbits of points in and near the Mandelbrot set
  3.           copyright 1991 by Steven C. Willett
  4.                   June 29, 1991
  5.  
  6.     This program displays the orbits of points on the complex plane as
  7. the Mandelbrot mapping (x' = x² + c) is repeatedly applied to them.  
  8. Recall that the Mandelbrot set consists of all the points on the complex 
  9. plane which generate a bounded sequence under the iteration of this 
  10. mapping.  Recall also that it has been shown that a sequence will not be 
  11. bounded if the magnitude of any member of the sequence exceeds 2, so only 
  12. points near the origin are of much interest.
  13.  
  14.     This program is written for Turbo C and uses the Borland Graphics 
  15. Interface drivers.  It runs on both EGA and VGA systems.  It will run on 
  16. CGA systems as well, but the data displays are somewhat too large for the 
  17. CGA  format, so they will not quite fit properly on screen.  Since the CGA 
  18. quality is so poor I have not bothered to fix this up. The standard version 
  19. of FractOrb has the graphics drivers linked into the executable code so it 
  20. can be run on any compatible machine.  The SFORB version supports the SVGA 
  21. driver written by Jordan Hargrave. In this case the file SVGA16.BGI must be 
  22. available in the current directory when the program is run.  This file is
  23. included with the permission of the author.  I have also included SVGA16.TXT,
  24. a brief description of Jordan's SVGA driver, and SVGA16.REG, a form for
  25. registering Jordan's SVGA drivers.  Registration is not required to use his
  26. driver, but is encouraged for those who might be interested in developing
  27. applications using it.
  28.  
  29.     When started this program displays a very crude sketch of the 
  30. outline of the Mandelbrot set and the real and imaginary axes, with a cross 
  31. marking the initial starting point at the origin.  The coordinates of the 
  32. starting point are (always) displayed on the bottom line to the left.  At 
  33. the top of the screen is a title line and a line showing what command 
  34. keystrokes are available.
  35.  
  36.     The starting point can be moved in small steps (the step size is 
  37. initially 1/512, and is displayed on the bottom line with the coordinates) 
  38. using the arrow keys.  It can be moved in large steps (32 times the small 
  39. step) using PgUp, PgDn, Home (to the left) and End (to the right).  The 
  40. small step size can be halved with the '/' and doubled with the '*'.
  41.  
  42.     The program has two different operation modes, Auto and Manual. The 
  43. 'A' and 'M' keys are both toggles to change operational mode between these 
  44. two (I am very fond of toggles :->), so they behave identically.  The 
  45. program starts up in Manual mode.  In this mode the orbit is displayed one 
  46. iteration at a time with each non-command keystroke (space bar is 
  47. convenient).  Of course you will have to move the starting point away from 
  48. the origin to see anything interesting - the origin is a fixed point under 
  49. the Mandelbrot mapping.  If you toggle to Auto the orbit is shown 
  50. continuously and resets itself anytime you move the starting point (or hit 
  51. 'R' for reset).  This is usually the most spectacular show, but Manual is 
  52. very nice to slow things down when you find an interesting orbit and you 
  53. want to take a closer look.  You can pause the display in Auto by hitting 
  54. any non-command key.  FractOrb will beep at you to remind you that you have 
  55. to hit a key (any key) to continue.
  56.  
  57.     The program also has two display modes, Points and Lines.  As you 
  58. might expect, the 'P' and 'L' keys are both toggles to change display mode.  
  59. The default is Lines - in this mode the program displays the last 16 
  60. iterations as lines drawn between successive points in different colors 
  61. (white is the most recent).  In Point display mode the program displays all 
  62. the points which are visited in the orbit.  The two modes "feel" very 
  63. different, both are interesting.  The Lines mode gives you a better flavor 
  64. of what the orbit looks like over time, since older points disappear.  The 
  65. Points mode, on the other hand, displays the true complexity of the overall 
  66. orbit more effectively.  It is also much faster - the Lines mode has to 
  67. redraw 16 lines for each iteration while the Points mode just places one 
  68. new pixel on the screen.
  69.  
  70.     Finally FractOrb beeps twice to tell you when the orbit goes off 
  71. screen and then stops.  The response to the next keystroke depends on 
  72. operational and display modes: if you are in Auto mode OR in Points mode 
  73. the next keystroke acts like a reset.  In Manual mode and Lines mode you 
  74. can continue to follow the orbit while the old lines go off screen by 
  75. hitting non-command keys.
  76.  
  77.     This is my first attempt to distribute something I have written to 
  78. the MSDOS community - my old efforts in the CPM world have now become 
  79. ancient history!  I was moved to do so by my appreciation of many 
  80. pieces of software I have gotten from others who have done this before.  
  81. The program came about as a result of my efforts to explain to puzzled non- 
  82. mathematical, non-computerized friends just what the hell the Mandelbrot 
  83. set IS! {;-)}  I was inspired by the Stone Soup folks who have developed 
  84. an amazing piece of software in FRACTINT (which helped me decide not to 
  85. bother distributing my own not-particularly-distinguished Mandelbrot/Julia 
  86. set generator) but their orbit feature was far too "low key" to help my 
  87. explanations.  If any of you are out there I would be interested in trying 
  88. to incorporate this scheme in the FRACTINT package.
  89.  
  90.     This program is copyrighted, but is freely distributed with the 
  91. usual proviso that it not be used for any commercial purpose without my 
  92. permission and that it be distributed in its entirety - i.e, including this 
  93. document.  At this point I am not including the source - primarily because 
  94. I would be embarrassed to have the world know how slovenly I am.  This 
  95. program was originally written in one 16 hour session and it shows!
  96.  
  97.     I would love to hear from anyone about this software.
  98.  
  99.     Steve Willett
  100.     6422 Irwin Ct.
  101.     Oakland, CA 94609
  102.     (415) 654-7818 (h)  - {area code changes to 510 in fall 1991}
  103.     (415) 643-9544 (w - UC Berkeley, Chem. Eng.)   { " }
  104.     Prodigy: HXHW27A
  105.     Internet: swillett@cchem.berkeley.edu